package com.cc.blog.admin.service;

import com.cc.blog.admin.domain.dto.*;
import com.cc.blog.common.utils.Result;
import com.cc.blog.web.domain.dto.UpdateArticleIsTopReqDTO;

/**
 * @Author cc
 * @Date 2024/7/11 16:26
 */
public interface AdminArticleService {

    /**
     * 发布文章
     * @param publishArticleReqDTO
     * @return
     */
    Result publishArticle(PublishArticleReqDTO publishArticleReqDTO);

    /**
     * 删除文章
     * @param deleteArticleReqDTO
     * @return
     */
    Result deleteArticle(DeleteArticleReqDTO deleteArticleReqDTO);

    /**
     * 查询文章分页数据
     * @param findArticlePageListReqDTO
     * @return
     */
    Result findArticlePageList(FindArticlePageListReqDTO findArticlePageListReqDTO);

    /**
     * 查询文章详情
     * @param findArticleDetailReqDTO
     * @return
     */
    Result findArticleDetail(FindArticleDetailReqDTO findArticleDetailReqDTO);

    /**
     * 更新文章
     * @param updateArticleReqDTO
     * @return
     */
    Result updateArticle(UpdateArticleReqDTO updateArticleReqDTO);

    /**
     * 更新文章是否置顶
     * @param updateArticleIsTopReqDTO
     * @return
     */
    Result updateArticleIsTop(UpdateArticleIsTopReqDTO updateArticleIsTopReqDTO);
}
